Azure Functions 的 Azure 数据资源管理器输入绑定(预览)

您所在的位置:网站首页 当树枝折断时 电影在线观看免费 Azure Functions 的 Azure 数据资源管理器输入绑定(预览)

Azure Functions 的 Azure 数据资源管理器输入绑定(预览)

2023-05-27 21:19| 来源: 网络整理| 查看: 265

进程内 隔离进程

GitHub 存储库中提供了更多有关 Azure 数据资源管理器输入绑定的示例。

本部分包含以下示例:

HTTP 触发器,从查询字符串中按 ID 获取行 HTTP 触发器,从路由数据中获取多行

这些示例引用了 Product 类和相应的数据库表:

public class Product { [JsonProperty(nameof(ProductID))] public long ProductID { get; set; } [JsonProperty(nameof(Name))] public string Name { get; set; } [JsonProperty(nameof(Cost))] public double Cost { get; set; } } .create-merge table Products (ProductID:long, Name:string, Cost:double)

HTTP 触发器,从查询字符串中按 ID 获取行

以下示例展示了一个 C# 函数,该函数在给定 productId 的情况下检索产品列表。 该函数由使用 ID 参数的 HTTP 请求触发。 该 ID 用于检索与查询匹配的 Product 列表。

注意

HTTP 查询字符串参数区分大小写。

using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Azure.WebJobs.Extensions.Http; using Microsoft.Azure.WebJobs.Extensions.Kusto.Samples.Common; using Microsoft.Azure.WebJobs.Kusto; namespace Microsoft.Azure.WebJobs.Extensions.Kusto.Samples.InputBindingSamples { public static class GetProducts { [FunctionName("GetProductsList")] public static async Task RunAsync( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "getproducts")] HttpRequest req, [Kusto(Database:"productsdb" , KqlCommand = "declare query_parameters (productId:long);Products | where ProductID == productId" , KqlParameters = "@productId={Query.productId}", // get the value of the query parameter "productId" Connection = "KustoConnectionString")] IAsyncEnumerable products) { IAsyncEnumerator enumerator = products.GetAsyncEnumerator(); var productList = new List(); while (await enumerator.MoveNextAsync()) { productList.Add(enumerator.Current); } await enumerator.DisposeAsync(); return new OkObjectResult(productList); } } }

HTTP 触发器,从路由参数中获取多行

以下示例演示检索查询返回的文档的 C# 函数。 此函数由 HTTP 请求触发,该请求使用路由数据来指定 KQL 函数参数的值。 GetProductsByName 是一个简单的函数,用于检索与产品名称匹配的一组产品

.create function ifnotexists GetProductsByName(name:string) { Products | where Name == name } using System.Collections.Generic; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Azure.WebJobs; using Microsoft.Azure.WebJobs.Extensions.Http; namespace Microsoft.Azure.WebJobs.Extensions.Kusto.Samples.InputBindingSamples { public static class GetProductsFunction { [FunctionName("GetProductsFunction")] public static IActionResult Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "getproductsfn/{name}")] HttpRequest req, [Kusto(Database:"productsdb" , KqlCommand = "declare query_parameters (name:string);GetProductsByName(name)" , KqlParameters = "@name={name}", Connection = "KustoConnectionString")] IEnumerable products) { return new OkObjectResult(products); } } }

GitHub 存储库中提供了更多有关 Azure 数据资源管理器输入绑定(进程外)的示例。

本部分包含以下示例:

HTTP 触发器,从查询字符串中按 ID 获取行 HTTP 触发器,从路由数据中获取多行

这些示例引用了一个 Product 类和 Products 表,这两者都在前面的部分中进行了定义。

HTTP 触发器,从查询字符串中按 ID 获取行

以下示例演示检索单个记录的 C# 函数。 此函数由 HTTP 请求触发,该请求使用查询字符串来指定 ID。 该 ID 用于使用指定的查询检索 Product 记录。

注意

HTTP 查询字符串参数区分大小写。

using System.Text.Json.Nodes; using Microsoft.Azure.Functions.Worker; using Microsoft.Azure.Functions.Worker.Extensions.Kusto; using Microsoft.Azure.Functions.Worker.Http; using Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples.Common; namespace Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.InputBindingSamples { public static class GetProductsQuery { [Function("GetProductsQuery")] public static JsonArray Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "getproductsquery")] HttpRequestData req, [KustoInput(Database: "productsdb", KqlCommand = "declare query_parameters (productId:long);Products | where ProductID == productId", KqlParameters = "@productId={Query.productId}",Connection = "KustoConnectionString")] JsonArray products) { return products; } } }

HTTP 触发器,从路由参数中获取多行

以下示例展示了一个 C# 函数,该函数检索查询返回的记录(在本例中基于产品名称)。 此函数由 HTTP 请求触发,该请求使用路由数据来指定查询参数的值。 该参数在指定的查询中用于筛选 Product 记录。

using Microsoft.Azure.Functions.Worker; using Microsoft.Azure.Functions.Worker.Extensions.Kusto; using Microsoft.Azure.Functions.Worker.Http; using Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples.Common; namespace Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.InputBindingSamples { public static class GetProductsFunction { [Function("GetProductsFunction")] public static IEnumerable Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "getproductsfn/{name}")] HttpRequestData req, [KustoInput(Database: "productsdb", KqlCommand = "declare query_parameters (name:string);GetProductsByName(name)", KqlParameters = "@name={name}",Connection = "KustoConnectionString")] IEnumerable products) { return products; } } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3